/*
 * @Author: i@douxuefeng.cn
 * @Date: 2024-04-07 14:52:30
 * @LastEditTime: 2024-05-27 06:37:09
 * @LastEditors: Please set LastEditors
 * @Description:
 */
package params

type ErrResp struct {
	Errcode int64  `json:"errcode"`
	Errmsg  string `json:"errmsg"`
}

type UploadTempMediaResp struct {
	ErrResp
	Type      string `json:"type"`
	MediaId   string `json:"media_id"` //媒体文件上传后，获取标识，3天内有效。
	CreatedAt int64  `json:"created_at"`
}

type GetTempMediaResp struct {
	ErrResp
	ContentType string `json:"contentType"`
	Buffer      []byte `json:"buffer"`
}

type SendCustomMessageReq struct {
	Touser          string `json:"touser" form:"touser"`
	Msgtype         string `json:"msgtype" form:"msgtype"`
	Text            Text   `json:"text"`
	Image           Image  `json:"image"`
	Link            Link
	Miniprogrampage Miniprogrampage `json:"miniprogrampage"`
}
type Miniprogrampage struct {
	Title        string `json:"title" form:"title"`       //消息标题
	Pagepath     string `json:"pagepath" form:"pagepath"` //小程序的页面路径，跟app.json对齐，支持参数，比如pages/index/index?foo=bar
	Thumb        string `json:"thumb" form:"thumb"`
	ThumbMediaId string `json:"thumb_media_id"` //小程序消息卡片的封面， image 类型的 media_id，通过 uploadTempMedia接口上传图片文件获得，建议大小为 520*416
}
type Link struct {
	Title       string `json:"title"`
	Description string `json:"description"`
	Url         string `json:"url"`
	ThumbUrl    string `json:"thumb_url"` //图文链接消息的图片链接，支持 JPG、PNG 格式，较好的效果为大图 640 X 320，小图 80 X 80
}
type Image struct {
	Thumb   string `json:"thumb" form:"thumb"`
	MediaId string `json:"media_id"`
}
type Text struct {
	Content string `json:"content"`
}

type SendSubcribeMessageItemReq struct {
	Value string `json:"value"`
}
type SendSubcribeMessageReq struct {
	Touser      string                                `json:"touser"`
	Template_id string                                `json:"template_id"`
	Page        string                                `json:"page"`
	Data        map[string]SendSubcribeMessageItemReq `json:"data"`
}
